#ifndef DW_GRAPHICS_OPENGL_PIXELBUFFER_H
#	define DW_GRAPHICS_OPENGL_PIXELBUFFER_H

#include "graphics/pixelbuffer.h"

namespace dw
{
	namespace graphics
	{
		namespace opengl
		{

			class PixelBuffer : public IPixelBuffer
			{
			// Constructors
			public:

				PixelBuffer(const PixelFormat& pixelFormat, const uint32 width,  const uint32 height, const Usage& usage);

				~PixelBuffer();

			// Methods
			public:

				inline void resize(const uint32 size) {}

				inline void lock(const uint32 offset, const uint32 size, const Access access) { }

				inline void unlock() {}

				inline void read(const uint32 offset, const uint32 size, void* dst) const {}

				inline void write(const uint32 offset, const uint32 size, const void* src) {}

				inline void load(std::istream& is) {}

				inline void unload() {}

				/*HDC getHDC()			const { return _hdc; }
				HGLRC getHGLRC()		const {	return _hglrc; }
				HPBUFFERARB getHPBUFFER() const { return _hpbuffer; }*/

			// Fields
			private:

				HDC _hdc;
				
				HGLRC _hglrc;
				
				HPBUFFERARB _hpbuffer;
			
			};

		} // namespace opengl
	} // namespace graphics
} // namespace dw

#endif // DW_GRAPHICS_OPENGL_PIXELBUFFER_H
